<template>
  <ul>
    <li v-for="item in data" :key="item.text" @click.stop="toggle(item)">
      {{item.text}}
      <Tree2 :data="item.children" v-if="item.children && item.children.length>0" v-show="item.isShow"/>
    </li>
  </ul>
</template>

<script> 
/* 一个组件内部有自己的组件标签 */
export default {  // 
  name: 'Tree2', 
  props: ['data'],

  data () {
    return {
      isShow: true
    }
  },

  methods: {
    toggle (item) {
      if (item.hasOwnProperty('isShow')) {
        item.isShow = !item.isShow
      } else {
        this.$set(item, 'isShow', true)
      }
    }
  }
}
</script>